System and method for generating and managing geofeed-based alerts

ABSTRACT

The systems and methods described herein relate to monitoring content, generating alerts, determining trends, and communicating notifications related to geofeeds, including content related to geographically definable locations that is aggregated from a plurality of social media or other content providers. The system may monitor the content based on one or more alert parameters that specify alert conditions that when satisfied cause the system to generate an alert, including trending alerts. The system may track an activity as it moves over time. Content may be associated with the activity and monitored such that the activity may be tracked based on the monitored content. Various alerts may be generated based on the tracked activity. The system may communicate notifications that include the alerts, thereby leveraging content from social media or other providers to convey real-time information on subject matter, trends, activities, and/or other information.

RELATED APPLICATIONS

This application is a continuation of pending U.S. patent applicationSer. No. 14/792,506, filed Jul. 6, 2015, entitled “SYSTEM AND METHOD FORGENERATING AND MANAGING GEOFEED-BASED ALERTS”, which is a continuationof granted U.S. patent application Ser. No. 14/164,362, filed Jan. 27,2014, issued as U.S. Pat. No. 9,077,675 on Jul. 7, 2015, entitled“SYSTEM AND METHOD FOR GENERATING AND MANAGING GEOFEED-BASED ALERTS”,which is a continuation of granted U.S. patent application Ser. No.13/708,466, filed Dec. 7, 2012, issued as U.S. Pat. No. 8,639,767 onJan. 28, 2014, entitled “SYSTEM AND METHOD FOR GENERATING AND MANAGINGGEOFEED-BASED ALERTS”, which are each incorporated by reference hereinin its entirety. This application is related to granted U.S. patentapplication Ser. No. 13/708,516, filed Dec. 7, 2012, issued as U.S. Pat.No. 8,655,983 on Feb. 18, 2014, entitled “SYSTEM AND METHOD FOR LOCATIONMONITORING BASED ON ORGANIZED GEOFEEDS”, and granted U.S. patentapplication Ser. No. 13/708,404, filed Dec. 7, 2012, issued as U.S. Pat.No. 8,484,224 on Jul. 9, 2013, entitled “SYSTEM AND METHOD FOR RANKINGGEOFEEDS AND CONTENT WITHIN GEOFEEDS”, both of which are incorporated byreference in their entireties herein.

FIELD OF THE INVENTION

The disclosure relates to systems and methods for monitoring content,generating alerts, determining trends, and communicating notificationsrelated to geofeeds, including content related to geographicallydefinable locations that is aggregated from a plurality of social mediaor other content providers.

BACKGROUND OF THE INVENTION

The availability of content such as videos, audio files, photos, text,and/or other content over networks such as the Internet has grown atimpressive rates. Many Internet and other online service providers makethis type of content available to enable users to post and share suchcontent through their services. However, various limitations exist withrespect to how this vast amount of information can be effectivelymonitored and/or selectively displayed.

Because of the availability of large amounts of content, identifyingtrends and alerts in relation to the content may be difficult. Thus,interested parties may not obtain timely notifications of trends oralerts.

These and other problems exist.

SUMMARY OF THE INVENTION

The disclosure relates to systems and methods for monitoring content,generating alerts, determining trends, and communicating notificationsrelated to geofeeds, including content related to geographicallydefinable locations that is aggregated from a plurality of social mediaor other content providers.

In some embodiments, the system may include a computer that includes oneor more processors configured to perform some or all of a functionalityof a plurality of modules. For example, the one or more processors maybe configured to execute a geofeed creation module, an alert module, atracking module, a communication module, a user interface module, analert management module, and/or other modules.

The geofeed creation module may be configured to receive a request tocreate a geofeed based on a specification of one or more geo-locations.The request may include one or more geofeed parameters, one or morealert parameters and/or other parameters. The one or more geofeedparameters may be used to filter content into the geofeed and/or out ofthe geofeed. The alert parameters may specify one or more alertconditions that when satisfied trigger an alert for the geofeed.

The geofeed creation module may generate a geofeed definition thatincludes the specification of the one or more geo-locations, the one ormore geofeed parameters, the one or more alert parameters, and/or otherinformation related to the geofeed. The geofeed definition may beupdated. For example, the specification of the one or moregeo-locations, the one or more geofeed parameters, the one or more alertparameters, and/or other information of the geofeed definition may beupdated. In this manner, various parameters related to geofeeds may bedefined or updated at the time of specifying the geofeeds and/or afterthe geofeeds have been specified.

To create the geofeed, the geofeed creation module may obtain thespecification of the one or more geo-locations from the geofeeddefinition and generate requests that specify the one or moregeo-locations specifically for individual ones of the plurality ofcontent providers. In some embodiments, the geofeed creation module maycreate a single geofeed having a plurality of geo-locations that aregrouped with respect to one another. In other embodiments, the geofeedcreation module may create multiple distinct geofeeds, which may each beassociated with one or more geo-locations that are grouped with respectto one another. In these embodiments, each set of individual content maycorrespond to a single geofeed.

The alert module may be configured to monitor content and generatealerts for a geofeed based on the monitored content and the alertparameters that specify alert conditions. The alert conditions mayinclude, for example, a volume alert condition (e.g., an increase suchas a spike in the volume of content), a subject matter alert condition(e.g., a particular keyword appearing in the content), a temporal alertcondition (e.g., specified content being published, created, etc.,during a specified time period), a trend alert condition (e.g., ancontent that is trending with respect to geofeeds, external searchengines, etc.), and/or other alert conditions.

In some embodiments, the alert module may be configured to monitor acluster of content that share similar topics and/or other attributes.For example, a cluster of content may be related to “schools.” In thisexample, the cluster of content may be related to teachers, students,curricula, and/or other information related to schools.

In some embodiments, tracking module may be configured to track anactivity over time. The activity may move over time along a path oflocations. The tracking module may associate the content with theactivity and monitor the content to track the activity based on themonitored content. For example, users may be interested in tracking theprogress of a storm. The content may be associated with the activitysuch that the tracking module may create a geofeed or otherwise obtaincontent related to the storm over time. As the storm moves, the trackingmodule may monitor and track content related to the storm over time.

The communication module may be configured to communicate one or morenotifications that include geofeed-based alerts via one or morecommunication channels. The user interface module may be configured togenerate a user interface that displays geofeed-based alerts, trackinginformation, and/or other information related to geofeeds.

The alert management module may be configured to create, configure,update, modify, remove, or otherwise manage alert parameters. Forexample, the alert management module may be configured to define alertparameters after a geofeed definition has been created and cause thealert parameters to be added to the geofeed definition and/or may updatealert parameters for alerts that were already defined.

In some embodiments, the alert management module may facilitatesubscriptions to a defined alert. For example, a user may subscribe viathe alert management module to one or more geofeed-based alerts thathave already been defined (e.g., by the user and/or other users). Whenthe alert module generates and/or issues an alert based on definedalert, a notification that includes the alert may be communicated tousers who subscribed to the defined alert.

In some embodiments, the geofeed creation module and/or the alertmanagement module alert may generate an alert definition that identifiesone or more geofeeds to be monitored and includes one or more alertparameters. An alert definition allows alerts to be defined withoutupdating corresponding geofeed definitions.

Various other objects, features, and advantages of the invention will beapparent through the detailed description of the preferred embodimentsand the drawings attached hereto. It is also to be understood that boththe foregoing general description and the following detailed descriptionare exemplary and not restrictive of the scope of the invention.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 illustrates a system of monitoring content, generating alerts,determining trends, and communicating notifications related to geofeeds,according to an aspect of the invention.

FIG. 2 illustrates a process for generating a geofeed-based alert,according to an aspect of the invention.

FIG. 3 illustrates a screenshot of an interface for communicating ageofeed-based alert generated based on a volume alert condition,according to an aspect of the invention.

FIG. 4 illustrates a screenshot of an interface for communicating ageofeed-based alert generated based on a subject matter alert condition,according to an aspect of the invention.

FIG. 5 illustrates a screenshot of an interface for communicating ageofeed-based alert generated based on a plurality of alert conditionsincluding a temporal alert condition and a volume alert condition,according to an aspect of the invention.

FIG. 6 illustrates a screenshot of an interface for displaying motion ofgeofeed content over time, according to an aspect of the invention.

FIG. 7 illustrates a screenshot of an interface for displaying motion ofgeofeed content over time, according to an aspect of the invention.

DETAILED DESCRIPTION OF THE INVENTION

FIG. 1 illustrates a system 100 of monitoring content, generatingalerts, determining trends, and communicating notifications, accordingto an aspect of the invention. A geofeed includes a collection ofcontent, aggregated from various content providers, that is relevant toa geographically definable location (hereinafter, a “geo-location”). Thecontent (also referred to herein as “geofeed content”) may include, forexample, video, audio, images, text, hyperlinks, and/or other contentthat may be relevant to a geo-location. The content providers mayinclude, for example, social media platforms (e.g., FACEBOOK, TWITTER,INSTAGRAM, FLICKR, etc.), online knowledge databases, and/or otherproviders that can distribute content that may be relevant to ageo-location. The geo-location may be specified by a boundary, geocoordinates (e.g., latitude, longitude, altitude/depth), an address, aschool, a place name, a point of interest, a zip code, a city, a state,a country, and/or other information that can spatially identify an area.The content may be generated by content sources such as individuals,corporations, and/or other entities that may create content. As usedhereinafter, “a location,” “a geo-location,” “a geographically definablelocation,” and similar language is not limited to a single location butmay also refer to one or more such locations.

In many instances the created content can be automatically tagged withinformation such as user identifications, date/time information orgeographic information that specifies a location where the content wascreated. For example, cameras equipped with Global Positioning Satellite(“GPS”) units or other location-aware systems may embed into an imagefile latitude/longitude coordinates that indicate where a picture wastaken. In addition, modern hand-held devices such as smartphones may beequipped with a GPS sensor, which allows users to generate content(text, photos and videos) with their devices and immediately share thecontent through a plurality of social networks. Moreover, some devicesallow users to manually input the foregoing and other information forembedding into the content. Furthermore, editing software may allow auser to embed or otherwise associate information along with the contentafter the content was created.

As used herein, “monitor a geofeed” may include monitoring content of ageofeed and/or monitoring content related to one or more geo-locations.

System 100 may include a computer 110, a geofeed API 122, a contentconsumer device 130, provider APIs 140, content providers 150, and/orother components. In some embodiments, computer 110 may include one ormore processors configured to perform some or all of a functionality ofa plurality of modules. For example, the one or more processors may beconfigured to execute a geofeed creation module 111, an alert module112, a tracking module 113, a communication module 114, a user interfacemodule 115, an alert management module 116, and/or other modules 117.

Geofeed creation module 111 may be configured to create one or moregeofeeds 101 (illustrated in FIG. 1 as geofeed 101A, 1016, . . . ,101N), as described in granted U.S. patent application Ser. No.13/284,455, filed Oct. 28, 2011, issued as U.S. Pat. No. 8,655,873 onFeb. 18, 2014, entitled “SYSTEM AND METHOD FOR AGGREGATING ANDDISTRIBUTING GEOTAGGED CONTENT,” and granted U.S. patent applicationSer. No. 13/619,888, filed Sep. 14, 2012, issued as U.S. Pat. No.8,595,317 on Nov. 26, 2013, entitled “SYSTEM AND METHOD FOR GENERATING,ACCESSING, AND UPDATING GEOFEEDS”, both of which are incorporated byreference herein in their entirety.

For example, geofeed creation module 111 may format a request for ageofeed specific for different provider APIs 140 (illustrated in FIG. 1as API 140A, 140B, . . . , 140N). The provider APIs may facilitatereceiving content from corresponding content providers 150 (illustratedin FIG. 1 as content providers 150A, 150B, 150C). In some embodiments,geofeed creation module 111 may format a request directly for contentprovider 150N without using a corresponding API. Formatting instructionsmay be stored at a provider profile 134. A content consumer device 130may request and view geofeeds 101 created by geofeed creation module111. Geofeeds 101 created by geofeed creation module 111 may be storedin and/or retrieved from a geofeed database 136 and/or any otherdatabase linked to computer 110.

Alert module 112 may be configured to monitor a geofeed based on one ormore alert conditions that when satisfied cause a geofeed-based alert tobe generated. The alert conditions may include, for example, a volumealert condition (e.g., an increase such as a spike in the volume ofcontent), a subject matter alert condition (e.g., a particular keywordappearing in the content), a temporal alert condition (e.g., specifiedcontent appearing during a specified time period), a trend alertcondition (e.g., content that is trending with respect to geofeeds,external search engines, etc.), and/or other alert conditions.

In some embodiments, alert module 112 may be configured to monitor ageofeed based on one or more volume alert parameters that specify volumealert conditions. Volume alert conditions may be satisfied when newcontent (e.g., a new TWITTER post) is posted and/or when there is anincrease or spike in the number of content that appears over apredefined and configurable period of time in one or more geo-locationsthat are related to the geofeed. The volume alert parameter may specifya threshold volume of content based on a particular number and/orparticular percentage increase. The threshold volume of content may beautomatically determined by the system based on average volumes ofcontent, specified by a user, and/or be otherwise be configurable. Alertmodule 112 may generate an alert when new content is available and/orwhen the volume of content exceeds the threshold volume of content.

In some embodiments, alert module 112 may determine when volume hasincreased based on a comparison of a current volume of content and ahistorical volume of content. For example, when the current volume ofcontent (e.g., content for the past hour or other time period) relatedto a geofeed increases by a certain percentage (e.g., 20%) relative toits historical 30-day average, alert module 112 may generate an alert.Alert module 112 may determine a historical activity level by obtaining,for example, an average number of newly available geofeed content itemsper hour calculated over a certain time period (e.g., a 30-day period).The current level of activity may be measured by counting the number ofnewly available geofeed content items for the past hour or other timeperiod.

Alert module 112 may compare the current activity level to thehistorical 30-day average and if it determines that the current activitylevel exceeds the historical level (or exceeds by a predeterminedthreshold), an alert may be generated and/or triggered. For example,when the average number of content items posted per hour in a particulargeofeed for the past 30-day period is five, alert module 112 maygenerate an alert upon detecting that the current activity level exceedsfive. On the other hand, if the current activity level is below thehistorical average number of content, no alert is generated.

In this manner, alert module 112 facilitates real-time alerts based onvolume of content. For example, users may quickly and easily obtainreal-time content updates without having to constantly check multiplesources of content (e.g., various social media platforms) for newcontent. In a particular non-limiting example, news providers may beinterested in receiving real-time content that may be newsworthy. Thenews providers may specify one or more geofeeds that cover geo-locationsof interest and a volume alert parameter to monitor the specifiedgeofeeds. Alert module 112 may monitor content of the one or moregeofeeds and determine an availability of new content and/or an increasein the volume of content within a particular time period that satisfiesthe volume alert parameter. Thus, the news providers may obtainreal-time leads on potentially developing stories to target wherereporters should be sent to further investigate.

In some embodiments, alert module 112 may be configured to monitor ageofeed based on subject matter alert parameters that specify subjectmatter alert conditions. Subject matter alert conditions may besatisfied when particular subject matter appears in content. Alertmodule 112 may identify when subject matter appears in content based onsubject matter indicators related to the content. Subject matterindicators may include, for example, a particular keyword (or set ofkeywords) used in relation to content (e.g., a HASHTAG, words appearingin a FACEBOOK post, etc.), certain images used in relation to content,and/or other subject matter indicators. Thus, alert module 112 may beconfigured to generate alerts when specified subject matter appears incontent related to geofeeds. For example, a system administrator maywant to be alerted about inappropriate content (such as profanity,offensive images, etc.) so that such content can be immediately removedfrom the geofeeds.

In some embodiments, alert module 112 may monitor the geofeed based onthe keywords related to particular subject matter, topics, and/oractivity and generate an alert in response to detecting that one or moreof the keywords appear in the geofeed content. For example, a user maywish to receive alerts on criminal activity happening around his or herhome. Subject matter alert parameters that specify keywords related tocriminal activity such as “robbery,” “gun,” etc. may be specified by theuser and/or automatically in order to provide such subject matteralerts.

In some embodiments, alert module 112 may be configured to receive akeyword library that specifies one or more keywords. For example, a usermay generate a list of keywords for which an alert should be generated.The keywords of the keyword library may be related to certain activitiesthat a user wishes to monitor. For example, law enforcement may wish tomonitor gang activity at one or more geo-locations. Certain words,phrases, symbols, numbers, etc., may indicate gang activity at the oneor more geo-locations and these may be included in the keyword library.For example, a particular gang may use code words or “gang speak” knownby law enforcement that identify that particular gang's activity.Another gang may use other code words that identify its activity.Certain other keywords may generically indicate gang activity such as“gang,” “gun,” “drugs,” etc. Different keyword libraries may be used tomonitor different gangs and/or a single keyword library may be used tomonitor all gangs.

The keyword library may be stored in alert database 138 and/or any otherdatabase. In this manner, the keyword library may be obtaineddynamically and/or from storage in order to provide alerts based on thekeyword library.

Alert module 112 may detect an increase (and/or spike) in the usage of aparticular keyword (or set of keywords) by monitoring frequency of usageof the keyword (or set of keywords) in the geofeed content within aparticular geofeed. Alert module 112 may obtain a historical keywordfrequency (e.g., the average number of social media posts with thekeyword “storm” per day for the past 30-day period) and compare it tothe current keyword frequency. For example, when the historical 30-dayaverage frequency of the keyword “storm” has been 5 content items perday, alert module 112 may generate an alert upon detecting that thecurrent keyword frequency for the past 24 hours has increased by acertain percentage (e.g., 20%) relative to its historical 30-dayaverage.

For example, for first responders and disaster response teams, it may becritical to receive timely notification of emergency situations thatcall for immediate actions. In some embodiments, the emergencysituations may include natural disasters (e.g., earthquake, tornados,hurricanes, etc.), fire, flood, major accidents, etc. Once the firstresponders specify a geographical region to be monitored, alert module112 may obtain one or more geofeeds within the specified region andmonitor the geofeed content. The geofeeds generated may cover a smallcity, a bigger region such as the North America region, and/or multiplelocations like earthquake-prone areas. Alert module 112 may detect anincrease in the usage of the particular keyword (or set of keywords)(e.g., “earthquake”) in the geofeed content. In this case, an alert maybe generated to notify the first responders of the geofeed contentrelated to earthquake in the geographical region they specified. In thismanner, the first responders and disaster response teams may quickly andeasily obtain initial reports in order to direct responders toappropriate locations that may be identified by the geofeed content.

In some embodiments, alert module 112 may be configured to monitor ageofeed based on temporal alert parameters that specify temporal alertconditions. The temporal alert conditions may be satisfied when a timerelated to particular content such as a creation time, a publicationtime, etc., occurs at a particular time period. Temporal alertparameters may specify a time period for monitoring the geofeed such asa certain date (and/or time) range, business days (i.e., Monday toFriday), weekends (i.e., Saturday and Sunday), rush hours, holidays,and/or other time periods. For example, a user who commutes to workduring rush hours may be interested in receiving alerts regarding roadblocks, car accidents, road constructions, and/or unexpected trafficjams that may be happening along his commute. During a time periodspecified by the temporal alert parameters (e.g., a specified commutetime, rush hour, etc.), alert module 112 may monitor content related toone or more geofeeds related to geo-locations corresponding to the pathof the commute. In another example, a content consumer may want toreceive information related to special sales promotions duringparticular dates such as birthdays or holidays. In this example, duringthe specified time period, alert module 112 may monitor content relatedto one or more geofeeds related to geo-locations corresponding toshopping malls.

In some embodiments, alert module 112 may be configured to monitor acluster of content that share similar topics and/or other attributes.Content related to different locations may be grouped into a cluster byone or more common attributes such as a type of location, keyword (orset of keywords), and/or time. For example, teachers, students, and/orschool employees may be interested in receiving content originated fromlocations within school zones where a school zone may include an areawithin a radius of a certain miles centered about the school. A clusterof content may be formed by grouping content based on a type of locationsuch as “school” from which individual content items have beenoriginated. Alert module 112 may obtain and/or monitor a plurality ofgeofeeds where individual ones of the geofeeds may include contentoriginating from corresponding school zones and/or having subject matterrelated to schools.

In some embodiments, alert module 112 may be configured to generate analert based on one or more trend alert parameters that specify trendalert conditions. In some embodiments, alert module 112 may monitortrends in one or more geo-locations specified by content consumers whenrequesting to create and/or retrieve a geofeed. Alert module 112 maydetermine that one or more geo-locations are “trending” based on afrequency of requests to create and/or retrieve a geofeed for thosegeo-locations. In this example, the trend alert parameters may specifythe particular frequency of requests such that the trend alertconditions may be satisfied when one or more particular geo-locationshave been recently specified by content consumers during one or morerecent time periods at volumes (or numbers) greater than the particularfrequency. In some embodiments, the trend alert parameters may specifythe one or more geo-locations (e.g., particular geo-coordinates, aparticular place name such as “Empire State Building,” etc.), the one ormore recent time periods, the one or more previous time periods, and/orother conditions.

In some embodiments, alert module 112 may detect a trend based on one ormore common geo-locations. Common geo-locations may includegeo-locations that at least partially overlap and/or coincide with othergeo-locations. For example, the geo-location of the Empire StateBuilding at least partially overlaps and/or coincides with thegeo-location corresponding to New York City. In this example, thegeo-location corresponding to “New York City” may be determined to betrending based on geofeed requests related to “Empire State Building”and/or other geo-locations or subject matter related to “New York City.”

In some embodiments, the trend alert conditions may be satisfied whenparticular subject matter has been recently appearing in content duringone or more recent time periods at volumes (or numbers) greater than oneor more previous time periods. The trend alert parameters may specifythe subject matter, the one or more recent time periods, the one or moreprevious time periods, and/or other conditions.

In some embodiments, the trend alert conditions (e.g., the commongeo-locations, the subject matter, the one or more recent time periods,the one or more previous time periods, and/or other conditions) may bedetermined manually by a user and/or automatically by the system.

In some embodiments, alert module 112 may determine that trend alertsfor one or more geofeeds should be activated based on a geofeeddefinition, an alert definition, and/or other parameters. In someembodiments, alert module 112 may automatically process content of oneor more geofeeds to which the system has access (or has created) togenerate trends in content of the geofeeds at predetermined intervalssuch as on a nightly basis. In some embodiments, alert module 112 maygenerate a historical trend in which a trend may be determined based ona historical start point to a historical end point. Similarly, alertmodule 112 may automatically process one or more geofeed definitions togenerate trends in geo-location specifications at predeterminedintervals and/or to generate a historical trend in which a trend may bedetermined based on a historical start point to a historical end point.

In a non-limiting example of a trend, a movie may be released at aparticular date. Both before and after the particular date, a trend forthe movie may appear in content related to one or more geofeeds in thatusers may be TWEETING or otherwise creating content related to themovie. Prior to trailers for the movie being released, the movie may nothave been trending because users were unaware of the existence of themovie or were otherwise uninterested. In this example, alert module 112may detect the trend, generate a trend alert, and generate anotification related to the trend alert.

In some embodiments, alert module 112 may detect the trend based on oneor more trend alert parameters specified by a user such as a movieproducer who wishes to determine whether and how the movie may betrending in relation to one or more geofeeds. In some embodiments, alertmodule 112 may detect the trend automatically based on processingcontent from geofeeds on a nightly basis. For example, alert module 112may automatically detect that certain keywords (such one or more wordsfrom the movie title) appear in content of geofeeds to which the systemhas access and that the keywords have been appearing in more recentcontent.

In some embodiments, alert module 112 may determine subject matter fortrends based on information from third party sources such as third partysource engines and automatically determine trend alerts in relation togeofeeds based on the trend information from third party sources.

In some embodiments, alert module 112 may be configured to generate analert based on a historical, current, and/or future (e.g., predicted)behavior of a user. Behaviors may include, for example, creating and/orposting content on social media platforms, viewing or otherwiseresponding to promotions such as advertisements, redeeming coupons,and/or other behaviors. For example, a retailer that creates a geofeedcovering its store location may wish to receive an alert based on abehavior of the user. In this example, the user may post or otherwisecreate content while shopping in the store. Alert module 112 may detectthe arrival of new content in the geofeed and alert the retailer. Theretailer may transmit an electronic coupon in real-time to this shopperbased on the alert. Alert module may be notified of the redemption andmay generate an alert and/or store such notification. For example, theretailer may annotate the created or posted content to indicate that thecustomer has redeemed a coupon, thereby informing the system that thecoupon was redeemed. In some implementations, the system may interfacedirectly with a retailer system in order to receive indications of suchcoupon redemptions (and/or other user behavior such as purchases forwhich the retailer system is aware).

In some embodiments, alert module 112 may track this behavior of thecustomer (e.g., the behavior of being responsive to the coupon) andassociate it with the customer and/or the content posted by thecustomer. In this way, when the customer makes a subsequent visit to thestore and posts content via a content provider, alert module 112 maygenerate an alert which may inform the retailer to produce couponsand/or other promotions to the customer based on the behavior of thecustomer. In some embodiments, a geofeed-based alert may be generatedwhile monitoring one or more geofeeds based on a combination of two ormore alert parameters discussed herein. For example, alert module 112may be configured to generate an alert “when the volume of geofeedcontent is unusually high” (e.g., a volume alert condition) and “duringbusiness days” (e.g., a temporal alert condition). Other combinations ofalert conditions may be used to generate a geofeed-based alert as well.In a sense, a trending alert in some embodiments may be considered acombination of a subject matter alert and a volume alert in thatparticular subject matter appearing in content with an increasing volumeof current activity may cause a trend alert to be generated. It shouldbe noted that trending alert parameters may be combined with other alertparameters.

In some embodiments, alert module 112 may generate an alert notificationwhen an alert is no longer relevant. For example, an alert notificationmay be generated when a subject matter is no longer appearing incontent, when a trend is no longer trending, and/or other times when ageofeed-based alert is no longer be relevant.

In some embodiments, tracking module 113 may be configured to track anactivity over time. The activity may move over time along a path oflocations. The activity to be tracked may be specified in various wayssuch as by user input, automatically determined by tracking module 113,and/or ways to specify an activity to be tracked. A user may specify theactivity to be tracked such as by entering one or more geo-locationsrelated to the activity, specifying the subject matter of the activityto be tracked, and/or other information that specifies the activity tobe tracked. Tracking module 113 may automatically determine the activityto track based on alerts described herein and/or information that may beaccessible by the system.

Tracking module 113 may associate the content with the activity andmonitor the content to track the activity based on the monitoredcontent. For example, users may be interested in tracking the progressof a storm. The content may be associated with the activity such thattracking module 113 may create a geofeed or otherwise obtain contentrelated to the storm over time. As the storm moves, tracking module 113may monitor and track content related to the storm over time.

In some embodiments, content may be associated with the activity basedon subject matter of the content determined in a manner similar tosubject matter alerts. For example, content may be associated with astorm based on a keyword “storm,” a name of the storm, and/or otherwords that may relate to the storm. Various functions and featuresrelated to how to detect an increase (and/or spike) in the usage of aparticular keyword (or set of keywords) in geofeed content are asdescribed above with respect to the subject matter alert conditions.

In some embodiments, tracking module 113 may track movement of theactivity in various ways. For example, tracking module 113 mayautomatically track the movement by sampling one or more candidategeo-locations in a vicinity around a one or more first geo-locations(e.g., where the storm first made landfall) to identify geo-locations(which may correspond to pre-existing, newly created, system-generated,and/or other geofeeds) that may correspond to the movement of theactivity. When the frequency of usage of one or more keywords related toa candidate geo-location has increased by a predetermined percentage ina certain location relative to its historical keyword frequency (e.g.,the average number of social media posts with the keyword “storm” perday for the past 30-day period), tracking module 113 may select thecandidate geo-location as the next geo-location and repeat the processusing other candidate geo-locations around the selected candidategeo-location. In this manner, tracking module 113 may automaticallyassociate content with the activity as the activity moves.

In some embodiments, a direction of the “motion” of content may bedetermined by comparing information such as meta-data related to thegeofeed content. For example, tracking module 113 may compare thecreation time (and/or update time) of content and arrange the content inchronological order to determine the direction of content movement overtime.

In some embodiments, tracking module 113 may sample a largergeographical region (e.g., county, city, etc.) covering the originalgeofeed being tracked by tracking module 113 and monitor the biggerregion to understand how the geofeed content moves within that region.Tracking module 113 may capture multiple snapshots (and/or views) of theregion, each of the snapshots corresponding to individual ones of aplurality of consecutive time segments. For example, when it isdetermined that there is an increase in the volume of content in theoriginal geofeed being tracked in the first time segment (e.g., 9:00AM-9:30 AM), tracking module 113 may identify a bigger region thatcovers the original geofeed and capture a snapshot of contentdistribution of the region in the second time segment (e.g., 10:00AM-10:30 AM), another snapshot in the third time segment (e.g., 10:30AM-11:00 AM) and so on. Using these time-based snapshots of contentdistribution, tracking module 113 may determine that there is a spike inthe activity level (e.g., an increase in the volume of geofeed content)in one subsection of the region in the second time segment, anotherspike in another subsection of the region in the third time segment andso on. In this manner, tracking module 113 may determine certain“motion” of geofeed content along a certain path of locations over time.

In some embodiments, tracking module 113 may track the movement of theactivity based on inputs by a user or process such as an automatedprocess that provides coordinate updates of the activity. A systemadministrator or other user may input various geo-locations thatcorrespond to the actual storm's movement. In this manner, variousgeo-locations corresponding to the track of the storm may be entered bythe user so that the system may generate one or more geofeeds and/or onemore geofeed alerts based on the entered information.

One of ordinary skill in the art will appreciate that tracking module113 may also track the motion of geofeed content based on monitoring oneor more geofeeds for an increase (and/or spike) in the volume of geofeedcontent (e.g., the number of social media posts) in a certain location.Various functions and features related to how to detect an increase inthe usage of a particular keyword (or set of keywords) are as describedabove with respect to the content based alert conditions.

In some embodiments, tracking module 113 may predict an expected pathalong which geofeed content would be likely to move based on the currentpath of motion identified by tracking module 113. In some embodiments,alert module 112 may generate a geofeed-based alert based on thetracking information. For example, an alert may be generated to notifycontent consumers of geofeed content located along the current and/orexpected path of motion identified by tracking module 113.

Communication module 114 may be configured to communicate one or morenotifications that include geofeed-based alerts generated by alertmodule 112 discussed herein. The one or more notifications may becommunicated via one or more communication channels such as, forexample, SMS text, email, content delivered to a client application suchas a mobile application, a website, and/or other communication channel.In some embodiments, the geofeed-based alert may be communicated via auser interface such as a web page, mobile application, and/or otherinterface.

In some embodiments, the one or more notifications may be communicatedwhenever a geofeed-based alert is generated and/or when a certainpredefined number of geofeed-based alerts have been generated. Forexample, communication module 114 may not communicate a notificationuntil there have been 3 alerts (or any other predefined number ofalerts) generated. In some embodiments, communication module 114 maycommunicate the one or more notifications at a particular time intervaland/or frequency. For example, when an alert is generated, anotification may be generated every 1 minute until that alert isterminated. In some embodiments, communication module 114 maycommunicate the notifications at a frequency that changes. For example,notifications may be communicated every fifteen minutes during a firsthour, every half hour during a second hour, and hourly thereafter. Thechanges in frequency may be predefined or otherwise configurable.

User interface module 115 may be configured to generate a user interfacethat communicates and/or displays geofeed-based alerts. In someembodiments, user interface module 115 may display the movement and/ormotion of geofeed content over time as determined by tracking module113. Exemplary screenshots of interfaces generated by user interfacemodule 115 are illustrated in FIGS. 3-7.

Alert management module 116 may be configured to create, configure,update, modify, remove, or otherwise manage alert subscriptions. Acontent consumer may subscribe via alert management module 116 to one ormore geofeed-based alerts that have been manually created by contentconsumers and/or system-generated, and stored in an alert database 138.For example, when alert module 112 generates and/or issues an alertbased on one or more alert conditions, the alert may be communicated viacommunication module 114 to those content consumers who subscribed tothat particular alert via alert management module 116. Identificationinformation of alert subscribers (e.g., content consumers who subscribedto one or more geofeed-based alerts) may be stored in and/or retrievedfrom a user profile 132 and/or any other database linked to computer110.

Alert definition module 117 may be configured to generate alertdefinitions that are used to create and/or configure a new alert andupdate, modify, remove, or otherwise manage existing alerts stored inalert database 138. Alert definitions may be manually generated bycontent consumers and/or system-generated. An alert definition mayidentify one or more geofeeds to be monitored and include one or morealert conditions that when satisfied cause a geofeed-based alert to begenerated for the one or more geofeeds to be monitored. Alert conditionsmay include volume alert conditions, subject matter alert conditions,temporal alert conditions, and/or various other alert conditions, aswould be appreciated. Moreover, alert definitions may specify expirationdate and/or time for individual alerts. For example, once ageofeed-based alert is expired, a content consumer who subscribed to theparticular alert will no longer receive the alert even when one or morealert conditions specified for that alert have been satisfied. Alertdefinition module 117 may store alert definitions in alert database 138and/or any other database linked to computer 110.

Those having skill in the art will recognize that computer 110 andcontent consumer device 130 may each comprise one or more processors,one or more interfaces (to various peripheral devices or components),memory, one or more storage devices, and/or other components coupled viaa bus. The memory may comprise random access memory (RAM), read onlymemory (ROM), or other memory. The memory may store computer-executableinstructions to be executed by the processor as well as data that may bemanipulated by the processor. The storage devices may comprise floppydisks, hard disks, optical disks, tapes, or other storage devices forstoring computer-executable instructions and/or data.

One or more applications, including various modules, may be loaded intomemory and run on an operating system of computer 110 and/or consumerdevice 130. In one implementation, computer 110 and consumer device 130may each comprise a server device, a desktop computer, a laptop, a cellphone, a smart phone, a Personal Digital Assistant, a pocket PC, orother device.

Network 102 may include any one or more of, for instance, the Internet,an intranet, a PAN (Personal Area Network), a LAN (Local Area Network),a WAN (Wide Area Network), a SAN (Storage Area Network), a MAN(Metropolitan Area Network), a wireless network, a cellularcommunications network, a Public Switched Telephone Network, and/orother network.

FIG. 2 illustrates a process 200 for generating a geofeed-based alert,according to an aspect of the invention. The various processingoperations and/or data flows depicted in FIG. 2 (and in the otherdrawing figures) are described in greater detail herein. The describedoperations may be accomplished using some or all of the systemcomponents described in detail above and, in some embodiments, variousoperations may be performed in different sequences and variousoperations may be omitted. Additional operations may be performed alongwith some or all of the operations shown in the depicted flow diagrams.One or more operations may be performed simultaneously. Accordingly, theoperations as illustrated (and described in greater detail below) areexemplary by nature and, as such, should not be viewed as limiting.

In an operation 212, process 200 may include obtaining an alertdefinition that identifies one or more geofeeds to be monitored andincludes one or more alert conditions that when satisfied cause ageofeed-based alert to be generated for the one or more geofeeds to bemonitored. For example, a content consumer may specify, via a userinterface, one or more geographically definable locations based on whichone or more geofeeds may be identified. One or more alert conditions mayinclude, for example, a volume alert condition which may be satisfiedwhen a particular keyword (e.g., “gun”) appears in the geofeed content.

In an operation 214, process 200 may include monitoring the geofeedcontent based on the one or more alert conditions included in the alertdefinition obtained in operation 212. In other words, process 200 mayinclude monitoring the geofeed content to determine whether the one ormore alert conditions have been satisfied.

In an operation 216, process 200 may include determining whether the oneor more alert conditions have been satisfied. For example, where thealert definition includes a volume alert condition, process 200 maydetermine that the volume alert condition has been satisfied when thereis an increase (and/or spike) in the volume of geofeed content (e.g.,the number of social media posts) in a certain location related to theone or more geofeeds being monitored. Moreover, where the alertdefinition includes a plurality of alert conditions, process 200 maycheck each one of the alert conditions has been satisfied. If process200 determines that not all of the alert conditions have been satisfied,process 200 may return to operation 214 to continuously monitor thegeofeed content. On the other hand, if process 200 determines that theone or more alert conditions have been satisfied, process 200 mayproceed to the next operation.

In an operation 218, process 200 may include generating a geofeed-basedalert. In an operation 220, process 200 may include communicating thegeofeed-based alert. The geofeed-based alert may be communicated via oneor more communication channels such as, for example, SMS text, email,content delivered to a client application such as a mobile application,a website, and/or other communication channel. In some embodiments, thegeofeed-based alert may be communicated via a user interface such as aweb page, mobile application, and/or other interface.

FIG. 3 illustrates a screenshot of an interface 300 for communicating ageofeed-based alert generated based on a volume alert condition,according to an aspect of the invention. The screenshots illustrated inFIG. 3 and other drawing figures are for illustrative purposes only.Various components may be added, deleted, moved, or otherwise changed sothat the configuration, appearance, and/or content of the screenshotsmay be different than as illustrated in the figures. Accordingly, thegraphical user interface objects as illustrated (and described ingreater detail below) are exemplary by nature and, as such, should notbe viewed as limiting.

Interface 300 and other interfaces described herein may be implementedas a web page communicated from computer 110 to a client, an applicationsuch as a mobile application executing on the client that receivesgenerates the interface based on information communicated from computer110, and/or other interface. Whichever type of interface is used,computer 110 may communicate the data and/or formatting instructionsrelated to the interface to the client, causing the client to generatethe various interfaces of FIG. 4 and other drawing figures. Furthermore,computer 110 may receive data from the client via the variousinterfaces, as would be appreciated.

Referring to FIG. 3, interface 300 may provide a geofeed-based alertthat may be generated when alert module 112 detects an increase (e.g.,spike) or a decrease in the volume of geofeed content (e.g., the numberof content items). As illustrated, a circle 310 having a radius andcenter (not illustrated) is displayed that indicates a boundary of ageofeed. As illustrated, there are 10 content items within the geofeedillustrated by circle 310. Since the current level of activity measuredby counting the number of newly available geofeed content items for thepast hour (e.g., 10 content items per hour) exceeds the historicalactivity level (e.g., 5 content items per hour), the activity-basedalert condition may be satisfied, causing a geofeed-based alert to begenerated.

FIG. 4 illustrates a screenshot of an interface 400 for communicating ageofeed-based alert generated based on a subject matter alert condition,according to an aspect of the invention.

Referring to FIG. 4, interface 400 may provide a geofeed-based alertthat may be generated when alert module 112 detects an increase (and/orspike) in the usage of a particular keyword (or set of keywords). Asillustrated, a circle 410 having a radius and center (not illustrated)is displayed that indicates a boundary of a geofeed. As illustrated,there are 7 content items (e.g., content elements 411-417) within thegeofeed illustrated by circle 410, all of which include a particularkeyword 420 (e.g., “gun”). Since the current keyword frequency (e.g., 7content items with the keyword “gun” per day) exceeds the historicalkeyword frequency (e.g., 5 content items per day), the subject matteralert condition may be satisfied, causing a geofeed-based alert to begenerated.

Although FIG. 4 has been described with respect to providing an alertbased on an increase or spike in activity, an alert may be generatedbased on an increase, a decrease, and/or steady-state in activity. Forexample, an entity may wish to know when a number of social media and/orother content have decreased, potentially indicating a loss of interestin a location such as a retail store or a point of interest. An entitymay also wish to know when a number of content is not increasing (ordecreasing) and generally remaining the same or within a predefinedrange. This may indicate that a promotion expected to increase contentbeing posted about a location is not working, for example.

FIG. 5 illustrates a screenshot of an interface 500 for communicating ageofeed-based alert generated based on a plurality of alert conditionsincluding a temporal alert condition and a volume alert condition,according to an aspect of the invention.

Referring to FIG. 5, interface 500 may provide a geofeed-based alertthat may be generated when alert module 112 detects an increase (and/orspike) in the volume of geofeed content (e.g., the number of socialmedia posts) during a specified time period. As illustrated, there are 3content items within a particular geofeed being monitored during a timesegment 540 (e.g., 9:00 AM to 10:00 AM). Since the current level ofactivity measured by counting the number of newly available geofeedcontent items posted during time segment 540 (e.g., 3 content items perhour) equals to, therefore does not exceed, the historical activitylevel (e.g., 3 content items per hour), no alert may be generated.Similarly, during a time segment 541 (e.g., 10:00 AM to 11:00 AM), noalert may be generated since the current level of activity (e.g., 6content items per hour) is below the historical activity level (e.g., 7content items per hour). In another example, there are 6 content itemswithin a particular geofeed being monitoring during a time segment 542(e.g., 11:00 AM to 12:00 PM). Since the current level of activity (e.g.,6 content items per hour) exceeds the historical activity level (e.g., 4content items per hour), both temporal alert condition and volume alertcondition may be satisfied, causing a geofeed-based alert to begenerated. Similarly, during a time segment 543 (e.g., 12:00 PM-1:00PM), a geofeed-based alert may be generated since the current level ofactivity (e.g., 2 content items per hour) exceeds the historicalactivity level (e.g., 1 content item per hour).

FIG. 6 illustrates a screenshot of an interface 600 for displayingmotion of geofeed content over time, according to an aspect of theinvention.

Referring to FIG. 6, interface 600 may display a plurality of geofeeds610, 620, and 630 that indicate certain motion of geofeed content. Forexample, a geofeed 610 may be identified when tracking module 113detects a spike in the usage of a particular keyword (or set ofkeywords) (e.g., “storm”) within geofeed 610. Tracking module 113 maythen sample around geofeed 610 to identify other geofeeds (e.g.,geofeeds 612, 620, and 622) that exist nearby geofeed 610 and determinewhether any of the identified geofeeds also indicates a spike in thekeyword usage. For example, when the frequency of usage of the keyword“storm” for a geofeed 620 increases by a predetermined percentagerelative to its historical keyword frequency (e.g., the average numberof social media posts with the keyword “storm” per day for the past30-day period), tracking module 113 may select geofeed 620 as the nextgeofeed to “track.” Similarly, tracking module 113 may sample aroundgeofeed 620 to identify other nearby geofeeds and determine whether anyof the nearby geofeeds also indicates a spike in the keyword usage. Inthis example, a geofeed 630 may be identified to indicate a spike in thekeyword usage. As illustrated, geofeeds 610, 620 and 630 may bedisplayed to communicate “motion” of geofeed content that is movingalong a certain path of locations.

FIG. 7 illustrates a screenshot of an interface 700 for displayingmotion of geofeed content over time, according to an aspect of theinvention.

Referring to FIG. 7, interface 700 may display multiple snapshots(and/or views) of a geographical region, each of the snapshotscorresponding to individual ones of a plurality of consecutive timesegments (e.g., time segments 740-743). For example, when it isdetermined that there is an increase in the volume of content in theoriginal geofeed being tracked in a time segment 740, tracking module113 may identify a bigger geographical region that covers the originalgeofeed and capture a snapshot of content distribution of the region ina time segment 741, another snapshot in a time segment 742 and so on.Using these time-based snapshots of content distribution, trackingmodule 113 may determine that there is a spike in the activity level(e.g., an increase in the volume of content) in one subsection of theregion in time segment 741, another spike in another subsection of theregion in time segment 742 and so on. Content items 730A-N may indicateoutliers and may be disregarded. As illustrated, an oval 710 may bedisplayed to indicate “motion” of geofeed content over time.

Other embodiments, uses and advantages of the invention will be apparentto those skilled in the art from consideration of the specification andpractice of the invention disclosed herein. The specification should beconsidered exemplary only, and the scope of the invention is accordinglyintended to be limited only by the following claims.

What is claimed is:
 1. A system for generating geofeed-based alerts, thesystem comprising: a computer comprising one or more physical processorsprogrammed by one or more computer program instructions that, whenexecuted, program the one or more physical processors to: obtain analert parameter that specifies an alert condition that, when satisfied,causes an alert to be generated; format a first request for social mediacontent items created at a geographically definable locationspecifically for a first social media content provider; format a secondrequest for social media content items created at the geographicallydefinable location specifically for a second social media contentprovider; transmit the first request to the first social media contentprovider via a network; transmit the second request to the second socialmedia content provider via the network; obtain a set of social mediacontent items from multiple social media content providers, wherein oneor more of the set of social media content items are obtained from thefirst social media content provider responsive to the first request andone or more of the set of social media content items are obtained fromthe second social media content provider responsive to the secondrequest, the set of social media content items including at least afirst social media content item created by a first user and a secondsocial media content item created by a second user; determine whetherset of social media content items satisfy the alert condition; generatean alert responsive to a determination that at least the first socialmedia content item or the second social media content item of the set ofsocial media content items satisfy the alert condition; and cause anotification that includes the alert to be communicated via a network.2. The system of claim 1, wherein the alert parameter comprises asubject matter alert parameter that specifies a subject matter alertcondition, and wherein the one or more physical processors are furtherprogrammed to: determine that the first social media content item or thesecond social media content item include subject matter that satisfiesthe subject matter alert condition.
 3. The system of claim 2, wherein todetermine that the first social media content item or the second socialmedia content item include subject matter that specifies the subjectmatter alert condition, the one or more physical processors are furtherprogrammed to: determine whether a keyword specified by the subjectmatter alert parameter is included in the first social media contentitem or the second social media content item.
 4. The system of claim 1,wherein the alert parameter comprises a volume alert parameter thatspecifies a threshold volume of a volume alert condition, and whereinthe one or more physical processors are further programmed to: determinethat a volume of the first social media content item or the secondsocial media content item exceeds the threshold volume, satisfying thevolume alert condition.
 5. The system of claim 4, wherein the one ormore physical processors are further programmed to: automaticallydetermine the threshold volume based on a historical volume of content.6. The system of claim 1, wherein the alert parameter comprises atemporal alert parameter that specifies a temporal alert condition, andwherein the one or more physical processors are further programmed to:determine that the first social media content item or the second socialmedia content item are related to a time specified by the temporal alertparameter, satisfying the temporal alert condition.
 7. The system ofclaim 1, wherein to format the first request for social media contentitems specifically for the first social media content provider, the oneor more physical processors are further programmed to: access a storedfirst content provider profile comprising a first input format rule thatdescribes how to request content from the first social media contentprovider, wherein the first request for social media content items isformatted based on the first input format rule.
 8. The system of claim1, wherein the first request comprises a specification of thegeographically definable location in a predefined format, and wherein toformat the first request for social media content items specifically forthe first social media content provider, the one or more processors arefurther programmed to: generate a specification of the geographicallydefinable location in a predefined format for requesting content from atleast the first social media content provider, wherein the formattedfirst request includes the specification of the geographically definablelocation in the predefined format.
 9. The system of claim 1, wherein thealert parameter further indicates that multiple social media contentitems must satisfy the alert condition to cause the alert to begenerated.
 10. The system of claim 1, wherein the alert condition isrelated to an activity to be tracked, the one or more physicalprocessors are further programmed to: associate the first social mediacontent item with the activity based on a keyword that appears in thefirst social media content item, wherein the keyword is related to orindicates the activity, and wherein the first social media content wascreated at the geographically definable location at a first time; obtainone or more additional social media content items created by the firstuser based on the association of the first social media content itemcreated by the first user with the activity, wherein the one or moreadditional social media content items include at least a third socialmedia content item created at a second time; and determine that thegeographically definable location and the third social media contentitem represent a path of the activity over time, wherein the alertincludes an indication of the path of the activity over time.
 11. Amethod for generating geofeed-based alerts, the method being implementedon a computer system having one or more physical processors programmedby one or more computer program instructions that, when executed,program the one or more physical processors to perform the method, themethod comprising: obtaining, by the computer system, an alert parameterthat specifies an alert condition that, when satisfied, causes an alertto be generated; formatting, by the computer system, a first request forsocial media content items created at a geographically definablelocation specifically for a first social media content provider;formatting, by the computer system, a second request for social mediacontent items created at the geographically definable locationspecifically for a second social media content provider; transmitting,by the computer system, the first request to the first social mediacontent provider via a network; transmitting, by the computer system,the second request to the second social media content provider via thenetwork; obtaining, by the computer system, a set of social mediacontent items from multiple social media content providers, wherein oneor more of the set of social media content items are obtained from thefirst social media content provider responsive to the first request andone or more of the set of social media content items are obtained fromthe second social media content provider responsive to the secondrequest, the set of social media content items including at least afirst social media content item created by a first user and a secondsocial media content item created by a second user; determining, by thecomputer system, whether the set of social media content items satisfythe alert condition; generating, by the computer system, an alertresponsive to a determination that at least the first social mediacontent item or the second social media content item of the set ofsocial media content items satisfy the alert condition; and causing, bythe computer system, a notification that includes the alert to becommunicated via a network.
 12. The method of claim 11, wherein thealert parameter comprises a subject matter alert parameter thatspecifies a subject matter alert condition, the method furthercomprising: determining, by the computer system, that the first socialmedia content item or the second social media content item includesubject matter that satisfies the subject matter alert condition. 13.The method of claim 12, wherein determining that the first social mediacontent item or the second social media content item include subjectmatter that satisfies the subject matter alert condition comprises:determining, by the computer system, whether a keyword specified by thesubject matter alert parameter is included in the first social mediacontent item or the second social media content item.
 14. The method ofclaim 11, wherein the alert parameter comprises a volume alert parameterthat specifies a threshold volume of a volume alert condition, themethod further comprising: determining, by the computer system, that avolume of the first social media content item or the second social mediacontent item exceeds the threshold volume, satisfying the volume alertcondition
 15. The method of claim 14, the method further comprising:automatically determining, by the computer system, the threshold volumebased on a historical volume of content.
 16. The method of claim 11,wherein the alert parameter comprises a temporal alert parameter thatspecifies a temporal alert condition, the method further comprising:determining, by the computer system, that the first social media contentitem or the second social media content item are related to a timespecified by the temporal alert parameter, satisfying the temporal alertcondition.
 17. The method of claim 11, wherein formatting the firstrequest for social media content items specifically for the first socialmedia content provider comprises: accessing, by the computer system, astored first content provider profile comprising a first input formatrule that describes how to request content from the first social mediacontent provider, wherein the first request for social media contentitems is formatted based on the first input format rule.
 18. The methodof claim 11, wherein the first request comprises a specification of thegeographically definable location in a predefined format, and whereinformatting the first request for social media content items specificallyfor the first social media content provider comprises: generating, bythe computer system, a specification of the geographically definablelocation in a predefined format for requesting content from at least thefirst social media content provider, wherein the formatted first requestincludes the specification of the geographically definable location inthe predefined format.
 19. The method of claim 11, wherein the alertparameter further indicates that multiple social media content itemsmust satisfy the alert condition to cause the alert to be generated. 20.The method of claim 11, wherein the alert condition is related to anactivity to be tracked, the method further comprising: associating thefirst social media content item with the activity based on a keywordthat appears in the first social media content item, wherein the keywordis related to or indicates the activity, and wherein the first socialmedia content was created at the geographically definable location at afirst time; obtaining one or more additional social media content itemscreated by the first user based on the association of the first socialmedia content item created by the first user with the activity, whereinthe one or more additional social media content items include at least athird social media content item created at a second time; anddetermining that the geographically definable location and the thirdsocial media content item represent a path of the activity over time,wherein the alert includes an indication of the path of the activityover time.